草庐IT

c++ - 如何使用 Qt 在 Windows 上检查网络接口(interface)类型是以太网还是无线?

我需要找出PC上的网络接口(interface)类型是有线还是无线。我尝试使用提供适配器名称的QNetworkInterface类。但是Windows上的用户可以更改适配器名称。在Mac上,我可以检查接口(interface)类型为eth0或eth1,因为它对所有用户都是相同的。我也试过QNetworkConfiguration::bearerType,但我得到的配置是以太网,即用于有线和无线配置的BearerEthernet。有没有其他方法可以在Qt中或使用特定于Windows平台的API找出网络接口(interface)类型? 最佳答案

c++ - 为 Beaglebone Black 编译 Qt

我想从源代码为BeagleboneBlack编译Qt。我有以下内容:交叉编译器:gcc-linaro-arm-linux-gnueabihf-4.9-2014.06_linuxqt-everywhere-opensource-src-5.3.1。我的主机操作系统是ScientificLinux6.332位。我的问题是我不知道需要将哪些参数传递给./confiure工具。我有以下线索:-xplatform=qtbase/mkspecs/linux-arm-gnueabi-g++-device=qtbase/mkspecs/devices/linux-beagleboard-g++-dev

c++ - 菜单栏仅在使用 Qt5 在 MacOS 上切换应用程序/桌面后显示

使用以下示例代码,启动应用程序时,使用Qt5.3.2的MacOS10.9.5上的native菜单不会显示。以前的菜单仍然可见,但无法使用此工具栏执行任何操作。如果我切换到另一个应用程序或另一个桌面,该应用程序的菜单将按预期变得可见和可用。我的问题与以下问题几乎相同,但答案不适用于我的代码:Qtmenubarnotshowing这里还有另一个非常相似的问题,我已经根据建议的答案修改了我的代码,但它也不起作用:MenuBarNotShowingforSimpleQMainWindowCode,QtCreatorMacOS#include#includeclassMainWindow:pub

c++ - 如何识别导致Qt 警告信息的行?

我正在使用Qt,有时它会在调试窗口中给出以[E]开头的警告消息。大多数时候,[E]警告消息还会提供有关发出此警告的cpp文件的行信息的信息。就像这个:atkernel\qmetatype.cpp:597TypeconversionalreadyregisteredfromtypeQPairtotypeQtMetaTypePrivate::QPairVariantInterfaceImpl不过,通常这些cpp文件都是Qt自带的文件,在windows中一般都是dll。问题是,我从来没有在自己的代码中注册过这样的类型转换。而且这个警告似乎与多线程有关,因为它不会每次都出现。是否有任何方法、功

c++ - 在 Qt 的外部类中使用 OpenGL 上下文

我在Qt中有一个继承自QGLViewer的窗口。如果我在该类中创建任何着色器程序,QGLShaderProgrammyShader一切都运行良好。但是,我开始将一些渲染调用移至具有draw()调用的类之外​​的类,结果出现问题。应用程序编译正常,没有错误,但在执行时我收到错误Theprogramhasunexpectedlyfinished。我发现从Qt4到Qt5着色器类发生了变化,成为Qt5中使用的QOpenGLShaderProgram。我试了一下,但还是出现了同样的问题,不过我收到了一条不同的错误消息QOpenGLFunctionscreatedwithanon-currentc

qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed

方法一:如果是https,改为http。方法二:Qt解决qt.network.ssl:QSslSocket::connectToHostEncrypted:TLSinitializationfailed问题-CSDN博客其他: 

c++ - QT 事件透明度仅适用于部分小部件

本软件显示3个widget:主窗口内容小部件,覆盖大部分主窗口自定义小部件,覆盖主窗口和内容小部件的一部分。自定义小部件有一部分(定义为QRect)需要Event-opaque,而周围区域必须是Event-transparent。我试过:setAttribute(Qt::WA_TransparentForMouseEvents);但是自定义的所有子部件也变得透明。我也尝试过setMask,但是自定义小部件无法在周围区域绘制。如何实现这种部分事件透明?示例(它没有解释完整的问题,只是添加了一个测试解决方案的基础):主要.cpp#include"transparentwidget.hpp"

c++ - Q3ListView 是否无法从 Qt 后备存储中注销或代码错误?

我有以下用例(实际上没有意义,因为它是从现实生活中的工作示例中最小化的,但我认为它在技术上仍然是正确的):classDialog:publicQDialog{public:Dialog(QWidget*parent):QDialog(parent){newQ3ListView(this);//thiswillcrash//newQWidget(this);//thiswon'tcrash}};根据添加到Dialog的内容,程序是否会在删除Dialog实例时崩溃(如代码片段中的注释所示),但仅当主窗口的标志已被修改。下面是MainWindow类的代码,它使用了Dialog:classMa

c++ - Qt 5.5 QOpenGLTexture 复制数据问题

我正在使用Qt5.5OpenGL包装类。特别是试图让QOpenGLTexture工作。我在这里创建一个1x12D白色纹理用于mask目的。这有效:voidRenderer::initTextures(){QImagewhite(1,1,QImage::Format_RGBA8888);white.fill(Qt::white);m_whiteTexture.reset(newQOpenGLTexture(QOpenGLTexture::Target2D));m_whiteTexture->setSize(1,1);m_whiteTexture->setData(white);//m_w

c++ - Qt 对象管理与 Qt 插件

我的问题是在使用Qt插件时如何进行适当的对象/资源管理。默认的RAII似乎不能很好地与Qt一起工作。在我们的应用程序中,我们使用在运行时动态加载的模块(Qt插件)。当加载的插件可以self初始化时,作为这个初始化阶段的一部分,它们可以将自己的小部件添加到应用程序中。-到工具栏-到侧面板-ETC。添加到主窗口的小部件的所有权也会转移。一切正常,但现在我们的应用程序变得越来越复杂,我们还需要注意关闭阶段。简单地卸载模块会给我们带来各种各样的麻烦。不存在的对象或在其对象仍然存在时被卸载的类型。要实现可靠的关闭,似乎唯一正确的方法是进行反向初始化。这也意味着每个向主窗口添加小部件的模块也必须删